Шаг 27 - Поддержка сокетов MFC IP адрес удаленного компьютера.

После связи мы можем спокойно получить IP компьютера с которым связались. Функция для этого есть.

BOOL GetPeerName( CString& rPeerAddress, UINT& rPeerPort );

Пробуем.

if (sa.Connect("pop.yandex.ru",25))
{
	CString address;
	UINT port;
	sa.GetPeerName(address,port); 
	AfxMessageBox(address);

} 
else AfxMessageBox("Error Connect");

Смотрим результат.

27_1.gif (2653 b)

Вот есть он. Подобный способом можно легко определить IP по имени только нужно пор угадать. А просто все. 80 - HTTP (странички WEB) 25 - SMTP (почта) 139 - NetBios. Вообщем можно. Есть одно но, что нужно соединение с интрнет, но без него не как. Сервера которые возвращают по имени адрес находятся в интернете. При желании можно получить и свой IP в данный момент

if (sa.Connect("pop.yandex.ru",25))
{
	CString address;
	UINT port;
	CString miaddress;
	sa.GetPeerName(address,port); 
	sa.GetSockName(miaddress,port); 
	AfxMessageBox(address + " " + miaddress);

} 
else AfxMessageBox("Error Connect");

27_2.gif (3856 b)

Hosted by uCoz